package services.impl;

import services.*;
import entities.*;
import java.util.List;
import java.util.LinkedList;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.function.Predicate;
import java.util.Arrays;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.function.BooleanSupplier;
import org.apache.commons.lang3.SerializationUtils;
import java.util.Iterator;

public class LabManageSystemImpl implements LabManageSystem, Serializable {
	
	
	public static Map<String, List<String>> opINVRelatedEntity = new HashMap<String, List<String>>();
	
	
	ThirdPartyServices services;
			
	public LabManageSystemImpl() {
		services = new ThirdPartyServicesImpl();
	}

	public void refresh() {
		CreateTeamService createteamservice_service = (CreateTeamService) ServiceManager
				.getAllInstancesOf("CreateTeamService").get(0);
		JoinTeamService jointeamservice_service = (JoinTeamService) ServiceManager
				.getAllInstancesOf("JoinTeamService").get(0);
		CreatePlanService createplanservice_service = (CreatePlanService) ServiceManager
				.getAllInstancesOf("CreatePlanService").get(0);
		CreateDailyService createdailyservice_service = (CreateDailyService) ServiceManager
				.getAllInstancesOf("CreateDailyService").get(0);
		CheckPlanService checkplanservice_service = (CheckPlanService) ServiceManager
				.getAllInstancesOf("CheckPlanService").get(0);
		ManageDailyService managedailyservice_service = (ManageDailyService) ServiceManager
				.getAllInstancesOf("ManageDailyService").get(0);
		ManageAccountService manageaccountservice_service = (ManageAccountService) ServiceManager
				.getAllInstancesOf("ManageAccountService").get(0);
	}			
	
	/* Generate buiness logic according to functional requirement */
	
	
	
	/* temp property for controller */
			
	/* all get and set functions for temp property*/
	
	/* invarints checking*/
	public final static ArrayList<String> allInvariantCheckingFunction = new ArrayList<String>(Arrays.asList());
			
}
